#include "EWAPrjTrackType.hpp"

namespace Eyer
{
    EWAPrjTrackType EWAPrjTrackType::VIDEO (1, "VIDEO");
    EWAPrjTrackType EWAPrjTrackType::AUDIO (2, "AUDIO");

    EWAPrjTrackType::EWAPrjTrackType(int _id, const EyerString & _name)
        : id(_id)
        , name(_name)
    {

    }

    EWAPrjTrackType::EWAPrjTrackType()
    {
        *this = VIDEO;
    }

    EWAPrjTrackType::~EWAPrjTrackType()
    {

    }

    EWAPrjTrackType::EWAPrjTrackType(const EWAPrjTrackType & trackType)
    {
        *this = trackType;
    }

    EWAPrjTrackType & EWAPrjTrackType::operator = (const EWAPrjTrackType & trackType)
    {
        id = trackType.id;
        name = trackType.name;
        return *this;
    }

    bool EWAPrjTrackType::operator == (const EWAPrjTrackType & trackType) const
    {
        return id == trackType.id;
    }

    bool EWAPrjTrackType::operator != (const EWAPrjTrackType & trackType) const
    {
        return id != trackType.id;
    }

    bool EWAPrjTrackType::operator >= (const EWAPrjTrackType & trackType) const
    {
        return id >= trackType.id;
    }

    bool EWAPrjTrackType::operator <= (const EWAPrjTrackType & trackType) const
    {
        return id <= trackType.id;
    }

    bool EWAPrjTrackType::operator > (const EWAPrjTrackType & trackType) const
    {
        return id > trackType.id;
    }

    bool EWAPrjTrackType::operator < (const EWAPrjTrackType & trackType) const
    {
        return id < trackType.id;
    }
}